# 循环语句

# while循环
# 计算1到5各自阶乘的和
# sum = 0
# cur = 1
# while cur <= 5:
#     tmp = 1
#     i = 1
#     while i <= cur:
#         tmp *= i
#         i = i + 1
#     cur = cur + 1
#     sum += tmp
#
# print(f'sum = {sum}')

# for循环

# 计算1到10的和
# sum = 0
# for i in range(1, 11):
#     sum += i
# print(f'sum = {sum}')

# for循环语句 语法格式表示i遍历range里面的内容 range是一个内置函数
# range左闭右开 可以设置步长 也就是第三个参数
# 计算2 4 6 8 10 的和
# theSum = 0
# for i in range(2, 11, 2):
#     theSum += i
# print(f'sum = {theSum}')

# 这里sum有警告是因为 python中也有sum内置函数 这样写了变量名 后面就用不了sum函数了
# 因此最好不要冲突 快速更改变量名 使用shift+f6 或者点小灯泡

# continue 和 break 语句
# 变量1到5 遇到3 跳过 或者 结束循环
# theSum = 0
# for i in range(1, 6):
#     if i == 3:
#         continue
#     theSum += i
# print(f'1~5不包括3的和 = {theSum}')
#
# theSum2 = 0
# for i in range(1, 6):
#     if i == 3:
#         break
#     theSum2 += i
# print(f'1~5遇到3结束计算的和 = {theSum2}')

# 编写一个程序 可以计算输入数字的平均值 不限制输入数字个数 当输入 'stop' 的时候停止

count = 0 # 计算输入数字个数
theSum = 0 # 计算输入数字累计和
while True: #因为是不限制个数所以应该是死循环
    num = input("请输入一个数字(当输入为stop结束): ")
    if num == 'stop':
        break
    num = float(num) # 强转计算
    theSum += num
    count += 1
avg = theSum / count
print(f'输入的数字的平均值为 avg : {avg}')